Many types of processing systems use graphical user interfaces (GUIs). For instance, in a processing system with the operating system distributed by Microsoft Corporation (“Microsoft) under the name Windows® XP, user applications may display windows on the monitor to present information to the user and to request information from the user. In addition, the user may interact with objects in the windows (e.g., menus, buttons, check boxes, text fields, etc.) to control the operation of the application, to enter data, etc. The operating system itself may also use a GUI with windows to interact with the user. Many different operating systems support GUIs. TO generate windows, applications typically use tools provided by the operating system. Most GUIs are designed and proportioned to work effectively when presented on a monitor situated about two feet away from the user. Accordingly, such a GUI may be said to provide a “two-foot interface.” A user may utilize input devices such as a keyboard and a mouse to interact with a two-foot interface. Applications or programs which use two-foot interfaces and not ten-foot interface are referred to herein as legacy applications or programs. Similarly, two-foot interfaces and windows designed to operate within a two-foot interface are referred to as legacy interfaces and legacy windows, respectively. Likewise, the input devices that two-foot interfaces are designed to accept input from, such as keyboards and mice, are referred to as legacy input devices.
For instance, a user can use a mouse to move a pointer that displays in front of the objects in window. When the pointer is positioned in front of a desired object, the user may press a mouse button once to set the focus to that object, or twice in rapid succession (an operation called “double-clicking”) to launch a function associated with that object. Sometimes, functions can be launched with a single click. For purposes of this disclosure, a window which allows the user to utilize a mouse to move a pointer, to set the focus to a desired object, and to launch functions associated with objects is referred to as a mouse-enabled window.
Recently, Microsoft released a software package known as Windows® Media Center Edition (“MCE”). That package includes a Windows® XP operating system kernel, as well as one or more additional components, referred to herein collectively as the MCE application. The MCE application runs primarily in the user space (e.g., in ring 3), while the operating system typically runs in the kernel space.
The MCE application makes it easier for a personal computer to be used as the nerve center of a home entertainment center. The monitor that MCE uses may be a television set of other display device, which will typically be situated substantially more than two feet away from the user. The MCE application makes it easier for a person to control the computer from a distance. Thus, the MCE application may be said to provide a “ten-foot interface.”
Ten-foot interfaces typically are proportioned to be readable from a distance of about ten feet. In addition, since a user may prefer not to use a keyboard or a pointing device (e.g., a mouse) to control a home entertainment system, the windows in a ten-foot interface may use objects that the user can manipulate with a remote control.
However, MCE may also allow conventional applications to run on the system. That is to say, MCE may support applications which use only a two-foot interface, and which therefore require the user to utilize a keyboard or a mouse (or a similar pointing device) to interact with those applications. Other operating systems may also support both two-foot and ten-foot interfaces. However, as described in greater detail below, supporting two-foot and ten-foot interfaces on the same processing system presents certain challenges.